//
// C:\Program Files (x86)\FlashDevelop\Tools\flexsdk\frameworks\libs\player\10.0\playerglobal.swc\flash\display\DisplayObjectContainer
//
package flash.display
{
	import flash.display.DisplayObject;
	import flash.text.TextSnapshot;
	import flash.geom.Point;
	import js.element.canvas.CanvasRenderingContext2D;

	
	public class DisplayObjectContainer extends DisplayObject
	{
	
		
		protected var _childs:Vector.<DisplayObject>;
		private var _mouseChildren:Boolean
		
		
		public function DisplayObjectContainer ()
		{
			_childs = new Vector.<DisplayObject>();
		}
		
		
		public function get mouseChildren () : Boolean { return _mouseChildren }
		public function set mouseChildren (enable:Boolean) : void { _mouseChildren = enable }

		
		public function get numChildren () : int { return _childs.length };

		
		public function get tabChildren () : Boolean;
		public function set tabChildren (enable:Boolean) : void;

		
		public function get textSnapshot () : flash.text.TextSnapshot;

		public function addChild(child:DisplayObject):DisplayObject
		{
			_childs.push(child);
			//child.parent = this;
			return child;
		}
		

		
		public function addChildAt (child:DisplayObject, index:int) : flash.display.DisplayObject;

		
		public function areInaccessibleObjectsUnderPoint (point:Point) : Boolean;

		
		public function contains (child:DisplayObject) : Boolean;

		
		

		
		public function getChildAt (index:int) : flash.display.DisplayObject;

		
		public function getChildByName (name:String) : flash.display.DisplayObject;

		
		public function getChildIndex (child:DisplayObject) : int;

		
		public function getObjectsUnderPoint (point:Point) : Array;

		
		public function removeChild (child:DisplayObject) : flash.display.DisplayObject;

		
		public function removeChildAt (index:int) : flash.display.DisplayObject;

		
		public function setChildIndex (child:DisplayObject, index:int) : void;

		
		public function swapChildren (child1:DisplayObject, child2:DisplayObject) : void;

		
		public function swapChildrenAt (index1:int, index2:int) : void;
		
		
		public override function render(context:CanvasRenderingContext2D):void 
		{
			for (var i:int = 0; i < _childs.length;i++ )
			{
				var child:DisplayObject = _childs[i];
				child.render(context);
			}
		}
	}
}
